Skip to content

BCSS-23563 - feat(ecs-service): add ecs-service module#87

Open
dave4420 wants to merge 22 commits into
mainfrom
feature/BCSS-23563-add-ecs-service-module
Open

BCSS-23563 - feat(ecs-service): add ecs-service module#87
dave4420 wants to merge 22 commits into
mainfrom
feature/BCSS-23563-add-ecs-service-module

Conversation

@dave4420

@dave4420 dave4420 commented Jun 22, 2026

Copy link
Copy Markdown
Contributor

BCSS-23563

Description

Context

Type of changes

  • Refactoring (non-breaking change)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would change existing functionality)
  • Bug fix (non-breaking change which fixes an issue)

Checklist

  • I am familiar with the contributing guidelines
  • I have followed the code style of the project
  • I have added tests to cover my changes
  • I have updated the documentation accordingly
  • This PR is a result of pair or mob programming

Sensitive Information Declaration

To ensure the utmost confidentiality and protect your and others privacy, we kindly ask you to NOT including PII (Personal Identifiable Information) / PID (Personal Identifiable Data) or any other sensitive data in this PR (Pull Request) and the codebase changes. We will remove any PR that do contain any sensitive information. We really appreciate your cooperation in this matter.

  • I confirm that neither PII/PID nor sensitive data are included in this PR and the codebase changes.

@dave4420 dave4420 requested review from a team and saliceti as code owners June 22, 2026 12:51
@nhs-oliverslater nhs-oliverslater changed the title feat(ecs-service): add ecs-service module BCSS-23563 - feat(ecs-service): add ecs-service module Jun 23, 2026
@nhs-oliverslater nhs-oliverslater force-pushed the feature/BCSS-23563-add-ecs-service-module branch from fe0f272 to 0d4df63 Compare June 23, 2026 08:05
@nhs-oliverslater nhs-oliverslater requested review from Copilot and removed request for a team and saliceti June 23, 2026 09:01

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new ecs-service Terraform wrapper module to this repository (aligned to the context.tf tagging/naming pattern) and updates repo tooling so the new module is tracked by Dependabot and secret-scanning rules are less noisy.

Changes:

  • Add infrastructure/modules/ecs-service wrapper around terraform-aws-modules/ecs/aws//modules/service (pinned to 7.5.0) with README/inputs/outputs and provider lockfile.
  • Extend gitleaks configuration to better handle documentation/example IPs (incl. IPv6) and suppress a historical false positive.
  • Register the new module directory in .github/dependabot.yaml.

Reviewed changes

Copilot reviewed 10 out of 11 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
scripts/config/gitleaks.toml Expands allowlisted IPv4 ranges and adds an IPv6 detection rule with allowlisting for documentation prefixes.
.gitleaksignore Suppresses historical ipv6-rule false positives for older commits.
.github/dependabot.yaml Adds infrastructure/modules/ecs-service so Dependabot monitors it.
infrastructure/modules/ecs-service/versions.tf Declares Terraform/AWS provider version constraints for the new module.
infrastructure/modules/ecs-service/.terraform.lock.hcl Provider lockfile for the module.
infrastructure/modules/ecs-service/context.tf Adds the standard copied context.tf pattern pointing at ../tags.
infrastructure/modules/ecs-service/locals.tf Derives local.service_name from context or explicit override.
infrastructure/modules/ecs-service/main.tf Wires module inputs through to the upstream community ECS service submodule.
infrastructure/modules/ecs-service/variables.tf Defines the module’s input variables (large surface mirroring upstream).
infrastructure/modules/ecs-service/outputs.tf Exposes selected outputs from the upstream module for downstream stacks.
infrastructure/modules/ecs-service/README.md Adds usage docs, conventions, and autogenerated terraform-docs section for the new module.
Files not reviewed (1)
  • infrastructure/modules/ecs-service/.terraform.lock.hcl: Generated file

Comment on lines +510 to +514
variable "enable_fault_injection" {
description = "Enables fault injection and allows for fault injection requests to be accepted from the task's containers. Default is `false`"
type = bool
default = null
}
Comment on lines +735 to +739
variable "propagate_tags" {
description = "Specifies whether to propagate the tags from the task definition or the service to the tasks. The valid values are `SERVICE` and `TASK_DEFINITION`"
type = string
default = null
}
Comment on lines +232 to +236
variable "cluster_arn" {
description = "ARN of the ECS cluster where the resources will be provisioned"
type = string
default = ""
}
Comment on lines +929 to +933
variable "subnet_ids" {
description = "List of subnets to associate with the task or service"
type = list(string)
default = []
}
Comment on lines +1 to +6
################################################################
# ECS Service-specific inputs.
#
# Naming, tagging and the master `enabled` switch come from
# context.tf via `module.this`.
################################################################
Comment on lines +258 to +260
- Create VPCs, subnets, or security groups. The caller is responsible for
networking; pass existing security group IDs via `security_group_ids` or let
the module create one via `create_security_group = true`.
Comment on lines +267 to +268
- Create CloudWatch log groups. Define these in your container definitions or
provision them separately.
Comment on lines +1 to +6
locals {
# Service name is derived from context. The community module receives
# module.this.name directly so that context-driven label ordering is
# preserved without an intermediate local in the common case.
service_name = var.service_name != null ? var.service_name : module.this.name
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants